export default {
    carData:{
        money:0,
        data:[]
    },
    //数据加到购物车
    addToCar(goodsData){
        let falseNum=0;
        if (this.carData.data.length!==0){   //如果购物车有数据
            this.carData.data.forEach(item=>{
                if (item.num===undefined) item.num=1;    //增加数量属性
                if (item.name===goodsData.name){     //如果该商品已放入购物车
                    item.num++;    //数量增加
                }else {
                    falseNum++;
                }
                if (falseNum===this.carData.data.length){    //如果遍历购物车为找到该商品，将该商品添加进入购物车
                    goodsData.num=1;
                    goodsData.chooseState=true;   //加入选中状态
                    this.carData.data.push(goodsData);
                }
            });
        }else {   //如果购物车为空
            goodsData.num=1;   //数量
            goodsData.chooseState=true;   //选中状态
            this.carData.data.push(goodsData);
        }
        this.carData.money+=parseInt(goodsData.price)*parseInt(goodsData.num);  //总金额
        // console.log(this.carData)
    },
    //获取购物车金额
    getMoneyNum(){
        let chooseMoney=0;
        if (this.carData.data.length!==0){
            this.carData.data.forEach(item=>{
                if(item.chooseState){
                    chooseMoney+=parseInt(item.price)*parseInt(item.num);
                }
            });
        }
        this.carData.money=chooseMoney;
        return this.carData.money;
    },
    //删除所有商品数量
    delAllGoods(){
        this.carData={
            money:0,
            data:[]
        }
    },
    //增加某商品数量
    addGoodsNum(index){
        this.carData.data[index].num++;
    },
    //减少商品数量
    jianGoodsNum(index){
        this.carData.data[index].num>1 ?
            this.carData.data[index].num-- :
            this.carData.data.splice(index,1)
    },
    //改变商品选中状态
    changeOneGoodsState(index,state){
        this.carData.data[index].chooseState=state;
    },
    //改变所有商品选中状态
    changeAllGoodsState(state){
        this.carData.data.forEach(item=>{
            item.chooseState=state;
        })
    }
};